// #include <stdio.h>
// #include <stdlib.h>
// #include <string.h>
// #include <ctype.h>
// #include <stdbool.h>
// /***
//  *ctype.h 关于字符的操作 字符是不是数字
//  *error.h 错误宏
//  *fenv.h 浮点数操作
//  *float.h 浮点数范围
//  *inttypes.h 正数的操作
//  *ISO646.h 把逻辑运算符用单词表示
//  *limits.h 数据的范围
//  *locale.h 本地化库
//  *math.h 数学
//  *setjmp.h  函数与函数的调准
//  *signal.h  信号量的库
//  *stdarg.h 可变参数
//  *stdbool.h  布尔值
//  *stddef.h  c语言标准的几个类型
//  *stdint.h int 类型的描述
//  *stdio.h 标准输入和输出
//  *stdlib.h  windows的头文件
//  *string.h 字符串
//  *tgmath.h 泛型的函数
//  *time.h 时间
//  *uchar.h 无符号char 类型
//  *wchar.h char类型的宽字节版本
//  *wctype.h 对宽字节版本的数据做处理
//  *
//  */
//
// //可变参
// #include <stdarg.h>
//
//
// /**
//
//  *  va_list
//  *  va_start
//  *  * va_arg
//  *  va_end
//  */
//
// int sum(unsigned int count,int arg1,...) {
//   int  result = arg1;
//     va_list start;
//     va_start(start, arg1);
//
//     for(int i=1;i<count;i++) {
//         result += va_arg(start, int);
//     }
//
//     va_end(start);
//     return result;
//
// }
//
// void my_printf(const char * str,...) {
//     int inum = 0;
//     double dnum = 0.0;
//     va_list start;
//     va_start(start,str);
//     while (*str) {
//         if (*str == '%') {
//             str++;
//             switch (*str) {
//                 case 'd': {
//                     inum = va_arg(start, int);
//                     printf("%d", inum);
//                     break;
//                 }
//                     case 'f': {
//                     dnum = va_arg(start, double);
//                     printf("%f", dnum);
//                     break;
//                 }
//             }
//         }else {
//             printf("%c",*str);
//         }
//         str++;
//     }
// }
//
//
//
//
// int main() {
//     bool a = isdigit('9');
//     printf("%d\n",sum(2,1,2));
//     // printf("%d\n",sum(3,1,2,3));
//     my_printf("%d,%f",12,1.1);
//     return 0;
// }